Method, system and computer program product for coding a region of interest within an image of multiple views

ABSTRACT

For coding at least one region of interest within an image of multiple views, disparities are identified between the multiple views. In response to the disparities, the at least one region of interest is identified. The at least one region of interest is encoded at lower quantization relative to a remainder of the image. The remainder of the image is encoded at higher quantization relative to the at least one region of interest.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to U.S. Provisional Patent ApplicationSer. No. 61/504,449, filed Jul. 5, 2011, entitled REGION OF INTEREST(ROI) 3D VIDEO CODING BASED ON DEPTH INFORMATION, naming Do-Kyoung Kwonet al. as inventors, which is hereby fully incorporated herein byreference for all purposes.

BACKGROUND

The disclosures herein relate in general to digital image processing,and in particular to a method, system and computer program product forcoding a region of interest within an image of multiple views.

Region of interest (“ROI”) coding is useful for increasing an encodedimage's perceptual quality at relatively low bitrate. For ROI coding, inresponse to various criteria (e.g., motion and/or texture), an encoderselects an ROI (within the image) to encode at relatively lowerquantization. However, if the encoder selects the ROI in response tocriteria that fail to accord with a human's interests, then the encodedimage's perceptual quality may actually diminish, especially in codingan image of multiple views (e.g., three-dimensional (“3D”) videocoding). For example, such diminished quality can strain the human'sviewing of a corresponding decoded image with 3D effect on astereoscopic display screen, thereby causing the human's eventualdiscomfort (e.g., headaches and/or eye muscle pain).

SUMMARY

For coding at least one region of interest within an image of multipleviews, disparities are identified between the multiple views. Inresponse to the disparities, the at least one region of interest isidentified. The at least one region of interest is encoded at lowerquantization relative to a remainder of the image. The remainder of theimage is encoded at higher quantization relative to the at least oneregion of interest.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an information handling system of theillustrative embodiments.

FIG. 2 is a diagram of viewing axes of a human's left and right eyes.

FIG. 3A is a diagram of a left view of an image for viewing by thehuman's left eye on a display device of the system of FIG. 1.

FIG. 3B is a diagram of a right view of the image for viewing by thehuman's right eye on the display device.

FIG. 4 is a diagram of features at various depths within a stereoscopicimage of FIGS. 3A and 3B.

FIG. 5 is a flowchart of operation of an encoding device of the systemof FIG. 1.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of an information handling system (e.g., aportable battery-powered electronics device, such as a mobilesmartphone, a tablet computing device, a netbook computer, or a laptopcomputer), indicated generally at 100, of the illustrative embodiments.In the example of FIG. 1, a scene (e.g., including a physical object 102and its surrounding foreground and background) is viewed by a camerasystem 104, which: (a) digitizes images of such views; and (b) outputs avideo sequence of such digitized (or “digital”) images to an encodingdevice 106. In the example of FIG. 1, the camera system 104 is astereoscopic camera system, which includes dual imaging sensors, whichare horizontally offset from one another, namely: (a) a left imagingsensor for digitizing and outputting (to the encoding device 106) a leftview of an image for viewing by a human's left eye; and (b) a rightimaging sensor for digitizing and outputting (to the encoding device106) a right view of the image for viewing by the human's right eye.

From the camera system 104, the encoding device 106 receives suchimages. The encoding device 106 encodes such images into a binary logicbit stream. Also, the encoding device 106 outputs the bit stream to astorage device 108, which receives and stores the bit stream.

A decoding device 110 reads the bit stream from the storage device 108.In response to the bit stream, the decoding device 110 decodes the bitstream into such images. Also, the decoding device 110 outputs suchimages to a display device 112 for display to a human user 114. Thedisplay device 112: (a) receives such images from the decoding device110 (e.g., in response to a command that the user 114 specifies via atouchscreen of the display device 112); and (b) in response thereto,displays such images (e.g., stereoscopic images of the object 102 andits surrounding foreground and background), which are viewable by theuser 114.

In the example of FIG. 1, the display device 112 is a stereoscopicdisplay whose optical components enable viewing with 3D effect. In oneexample, the display device 112 displays such images (e.g., anaglyphimages) with 3D effect for viewing by the user 114 through specialglasses that: (a) filter the left view against being seen by a right eyeof the user 114; and (b) filter the right view against being seen by aleft eye of the user 114. In another example, the display device 112 isa stereoscopic 3D liquid crystal display device or a stereoscopic 3Dorganic electroluminescent display device, which displays such imageswith 3D effect for viewing by the user 114 without relying on specialglasses.

The encoding device 106 performs its operations in response toinstructions of a computer-readable program that is stored on acomputer-readable medium 116 (e.g., hard disk drive, flash memory card,or other nonvolatile storage device). Also, the computer-readable medium116 stores a database of information for operations of the encodingdevice 106. Similarly, the decoding device 110 performs its operationsin response to instructions of a computer-readable program that isstored on a computer-readable medium 118. Also, the computer-readablemedium 118 stores a database of information for operations of thedecoding device 110.

In an alternative embodiment: (a) the encoding device 106 outputs thebit stream directly to the decoding device 110 via a communicationchannel (e.g., Ethernet, Internet, or wireless communication channel);and (b) accordingly, the decoding device 110 receives and processes thebit stream directly from the encoding device 106 in real-time. In suchalternative embodiment, the storage device 108 either: (a) concurrentlyreceives (in parallel with the decoding device 110) and stores the bitstream from the encoding device 106; or (b) is absent from the system100. The system 100 is formed by electronic circuitry components forperforming the system 100 operations, implemented in a suitablecombination of software, firmware and hardware, such as one or moredigital signal processors (“DSPs”), microprocessors, discrete logicdevices, application specific integrated circuits (“ASICs”), andfield-programmable gate arrays (“FPGAs”).

FIG. 2 is a diagram of viewing axes of left and right eyes of the user114. In the example of FIG. 2, a stereoscopic image is displayed by thedisplay device 112 on a screen (which is a convergence plane whereviewing axes of the left and right eyes naturally converge tointersect). The user 114 experiences the 3D effect by viewing the imageon the display device 112, so that various features (e.g., objects)appear on the screen (e.g., at a point D1), behind the screen (e.g., ata point D2), and/or in front of the screen (e.g., at a point D3).

Within the stereoscopic image, a feature's disparity is a horizontalshift between: (a) such feature's location within the left view; and (b)such feature's corresponding location within the right view. Forexample, if a feature (within the stereoscopic image) is horizontallycentered on the point D1 within the left view, and likewise horizontallycentered on the point D1 within the right view, then: (a) such feature'sdisparity=D1−D1=0; and (b) the user 114 will perceive the feature toappear at the point D1 with zero horizontal disparity on the screen,which is a natural convergence distance away from the left and righteyes.

By comparison, if the feature is horizontally centered on a point P1within the left view, and horizontally centered on a point P2 within theright view, then: (a) such feature's disparity=P2−P1; and (b) the user114 will perceive the feature to appear at the point D2 with positivedisparity behind the screen, which is greater than the naturalconvergence distance away from the left and right eyes. Conversely, ifthe feature is horizontally centered on the point P2 within the leftview and horizontally centered on the point P1 within the right view,then: (a) such feature's disparity=P1−P2; and (b) the user 114 willperceive the feature to appear at the point D3 with negative disparityin front of the screen, which is less than the natural convergencedistance away from the left and right eyes. The amount of the feature'sdisparity (e.g., horizontal shift of the feature from P1 within the leftview to P2 within the right view) is measurable as a number of pixels,so that: (a) positive disparity is represented as a positive number; and(b) negative disparity is represented as a negative number.

FIG. 3A is a diagram of a left view for viewing by the left eye (of theuser 114) on the display device 112. FIG. 3B is a diagram of a rightview for viewing by the right eye (of the user 114) on the displaydevice 112. Accordingly, the left view (FIG. 3A) and its associatedright view (FIG. 3B) are a matched pair of left and right views, whichcorrespond to one another, and which together form a stereoscopic imagefor display to the user 114 on the screen of the display device 112.

The matched pair of left and right views are temporally co-located,because they are contemporaneously (e.g., simultaneously) digitized andoutput (to the encoding device 106) by the left and right imagingsensors, respectively. Portions of the image (e.g., features, such asobjects, within the image) include a mountain range, a truck, and aperson's face. Because the truck is horizontally centered on the samecoordinate in both of the left and right views (of FIGS. 3A and 3B), theuser 114 will perceive the truck to appear on the screen, which is anatural convergence distance away from the left and right eyes.

By comparison, the mountain range within the left view of FIG. 3A isleft of the mountain range within the right view of FIG. 3B. Asdiscussed hereinabove in connection with FIG. 2, if a feature (e.g., atthe point P1 in FIG. 2) within the left view is left of the same feature(e.g., at the point P2 in FIG. 2) within the right view, then the user114 will perceive such feature to appear behind the screen. Accordingly,the user 114 will perceive the mountain range (of FIGS. 3A and 3B) toappear behind the screen.

Conversely, the person's face within the left view of FIG. 3A is rightof the person's face within the right view of FIG. 3B. As discussedhereinabove in connection with FIG. 2, if a feature (e.g., at the pointP2 in FIG. 2) within the left view is right of the same feature (e.g.,at the point P1 in FIG. 2) within the right view, then the user 114 willperceive such feature to appear in front of the screen. Accordingly, theuser 114 will perceive the person's face (of FIGS. 3A and 3B) to appearin front of the screen.

FIG. 4 is a diagram of features at various depths within thestereoscopic image of FIGS. 3A and 3B. Such depths are proportional todisparities of such features. For example, within the image of FIGS. 3Aand 3B, features include: (a) the person's face at a depth A, which ishorizontally centered on a variable point L_(A) within the left view(FIG. 3A) and horizontally centered on a variable point R_(A) within theright view (FIG. 3B), where a disparity D_(A)=R_(A)−L_(A)<0 (so the user114 will perceive the person's face to appear in front of the screen);(b) the truck at a depth B, which is horizontally centered on a variablepoint L_(B) within the left view (FIG. 3A) and horizontally centered ona variable point R_(B) within the right view (FIG. 3B), where adisparity D_(B)=R_(B)−L_(B)=0 (so the user 114 will perceive the truckto appear on the screen); and (c) the mountain range at a depth C, whichis horizontally centered on a variable point L_(C) within the left view(FIG. 3A) and horizontally centered on a variable point R_(C) within theright view (FIG. 3B), where a disparity D_(C)=R_(C)−L_(C)>0 (so the user114 will perceive the mountain range to appear behind the screen).

Accordingly, in the example of FIGS. 3A, 3B and 4, the convergence planeis located at the depth B. As discussed hereinbelow in connection withFIG. 5, per image of multiple views (e.g., stereoscopic image), theencoding device 106 automatically: (a) identifies (e.g., computes byitself, or receives from another source) disparities between themultiple views (e.g., left and right views) of such image, such asrespective disparities of features within such image (e.g., disparitiesas identified from a depth map that assigns suitable depth values toregions within the image); and (b) in response to such disparities,determines one or more regions of interest (“ROIs”) within such image.

FIG. 5 is a flowchart of operation of the encoding device 106. Theoperation begins at a step 502, at which the encoding device 106receives an image (e.g., a stereoscopic image) from the camera system104. At a next step 504, in response to the database of information(e.g., training information) from the computer-readable medium 116, theencoding device 106: (a) detects and classifies various low levelfeatures (e.g., colors, edges, textures, focus/blur, object sizes,gradients, and positions) and high level features (e.g., faces, bodies,sky, foliage, and other objects) within the image; and (b) performs amean shift clustering operation to segment the image into regions.

At a next step 506, in response to disparities of such features, and inresponse to such information from the computer-readable medium 116, theencoding device 106 generates a depth map that assigns suitable depthvalues to such regions within the image. Each region includes its owngroup of respective pixels, so that all pixels (within such region) havesuch region's depth value in the depth map. In an alternativeembodiment, the encoding device 106 receives the disparities (e.g., byreceiving the depth map) from another source (e.g., from the camerasystem 104). At a next step 508, in response to a pixel's depth value,the encoding device 106 determines whether such pixel is located at adepth of interest.

In response to the encoding device 106 determining that such pixel islocated at a depth of interest, the operation continues from the step508 to a step 510, at which the encoding device 106 adds such pixel to alist of ROIs. After the step 510, the operation continues to a step 512.Conversely, in response to the encoding device 106 determining that suchpixel is not located at a depth of interest, the operation continuesfrom the step 508 to the step 512.

At the step 512, the encoding device 106 determines whether a next pixel(within the image) remains to be evaluated for possible addition to thelist of ROIs. In response to the encoding device 106 determining that anext pixel (within the image) remains to be so evaluated, the operationreturns from the step 512 to the step 508 for evaluation of such nextpixel. Conversely, in response to the encoding device 106 determiningthat a next pixel (within the image) does not remain to be so evaluated,the operation continues from the step 512 to a step 514.

At the step 514, the encoding device 106 automatically encodes theimage, so that: (a) if a macroblock (“MB”) includes one or more pixelsin the list of ROIs, then an entirety of such MB is encoded atrelatively lower (e.g., more fine) quantization; and (b) a remainder ofthe image is encoded at relatively higher (e.g., more course)quantization. After the step 514, the operation continues to a step 516,at which the encoding device 106 determines whether a next image remainsto be encoded. In response to the encoding device 106 determining that anext image remains to be encoded, the operation returns from the step516 to the step 502 for encoding of such next image. Conversely, inresponse to the encoding device 106 determining that a next image doesnot remain to be encoded, the operation ends.

By encoding at relatively lower quantization for the entirety of MBsthat include one or more pixels in the list of ROIs, the encoding device106 increases perceptual quality of such MBs. By encoding at relativelyhigher quantization for the remainder of the image, the encoding device106 achieves a relatively low bitrate for efficiency. The encodingdevice 106 encodes each MB's respective quantization parameter (“QP”)into the bit stream, so that the decoding device 110 receives the QPsand decodes the MBs accordingly. In one embodiment, QP is an integerwithin a range of 0≦QP≦51. A lower QP indicates relatively lowerquantization, and a higher QP indicates relatively higher quantization.

The depth(s) of interest accord with interests (e.g., natural focus) ofthe user 114. For example, within a stereoscopic image, a pixel's depthis proportional to such pixel's disparity between: (a) such pixel'slocation within the left view; and (b) such pixel's correspondinglocation within the right view. Accordingly, in one embodiment, theencoding device 106 determines whether a pixel is located at a depth ofinterest by determining whether such pixel's disparity d(x, y) is notgreater than a threshold dTH.

In a first example, dTH is 0, so the encoding device 106 determines thata pixel is located at a depth of interest in response to determiningthat such pixel's disparity d(x, y) is zero or negative (e.g., if theuser 114 naturally focuses upon objects that appear on the screen or infront of the screen). In FIGS. 3A and 3B, the truck and the person'sface have disparities that are zero or negative. Accordingly, in thefirst example: (a) the truck and the person's face are ROIs, which areoutlined by dashed enclosures in FIGS. 3A and 3B for illustrativepurposes; and (b) the encoding device 106 encodes MBs of such ROIs atrelatively lower quantization.

In a second example, dTH is a positive number. In a third example, dTHis a negative number. In a fourth example, dTH is an image's averagedisparity dAVG (e.g., if the image's disparities are all positive, or ifthe image's disparities are all negative). In a fifth example, dTH =dAVG+C, where C is a predetermined non-zero constant (e.g., a negativenumber).

In another embodiment (e.g., for a security monitoring system), theencoding device 106 determines whether a pixel is located at a depth ofinterest by determining whether such pixel's disparity d(x, y) is withinone or more ranges of disparity. In one example, the encoding device 106determines that a pixel is located at a depth of interest in response todetermining that such pixel's disparity d(x, y) is within either: (a) afirst range of dTHlow₁≦d(x, y)≦dTHhigh₁; (b) a second range ofdTHlow₂≦d(x, y)≦dTHhigh₂; or (c) a third range of dTHlow₃≦d(x,y)≦dTHhigh₃. In yet another alternative embodiment, the encoding device106 determines whether a pixel is located at a depth of interest bydetermining: (a) whether such pixel's disparity d(x, y) satisfies adisparity condition (e.g., equal to or less than dTH, or within a rangeof disparity); and (b) whether such pixel satisfies at least oneadditional criterion (e.g., color and/or position of such pixel).

In the illustrative embodiments, a computer program product is anarticle of manufacture that has: (a) a computer-readable medium; and (b)a computer-readable program that is stored on such medium. Such programis processable by an instruction execution apparatus (e.g., system ordevice) for causing the apparatus to perform various operationsdiscussed hereinabove (e.g., discussed in connection with a blockdiagram). For example, in response to processing (e.g., executing) suchprogram's instructions, the apparatus (e.g., programmable informationhandling system) performs various operations discussed hereinabove.Accordingly, such operations are computer-implemented.

Such program (e.g., software, firmware, and/or microcode) is written inone or more programming languages, such as: an object-orientedprogramming language (e.g., C++); a procedural programming language(e.g., C); and/or any suitable combination thereof. In a first example,the computer-readable medium is a computer-readable storage medium. In asecond example, the computer-readable medium is a computer-readablesignal medium.

A computer-readable storage medium includes any system, device and/orother non-transitory tangible apparatus (e.g., electronic, magnetic,optical, electromagnetic, infrared, semiconductor, and/or any suitablecombination thereof) that is suitable for storing a program, so thatsuch program is processable by an instruction execution apparatus forcausing the apparatus to perform various operations discussedhereinabove. Examples of a computer-readable storage medium include, butare not limited to: an electrical connection having one or more wires; aportable computer diskette; a hard disk; a random access memory (“RAM”);a read-only memory (“ROM”); an erasable programmable read-only memory(“EPROM” or flash memory); an optical fiber; a portable compact discread-only memory (“CD-ROM”); an optical storage device; a magneticstorage device; and/or any suitable combination thereof.

A computer-readable signal medium includes any computer-readable medium(other than a computer-readable storage medium) that is suitable forcommunicating (e.g., propagating or transmitting) a program, so thatsuch program is processable by an instruction execution apparatus forcausing the apparatus to perform various operations discussedhereinabove. In one example, a computer-readable signal medium includesa data signal having computer-readable program code embodied therein(e.g., in baseband or as part of a carrier wave), which is communicated(e.g., electronically, electromagnetically, and/or optically) viawireline, wireless, optical fiber cable, and/or any suitable combinationthereof

Although illustrative embodiments have been shown and described by wayof example, a wide range of alternative embodiments is possible withinthe scope of the foregoing disclosure.

What is claimed is:
 1. A method performed by an information handlingsystem for coding at least one region of interest within an image ofmultiple views, the method comprising: in response to the image,identifying disparities between the multiple views; in response to thedisparities, identifying the at least one region of interest; encodingthe at least one region of interest at lower quantization relative to aremainder of the image; and encoding the remainder of the image athigher quantization relative to the at least one region of interest;wherein identifying the at least one region of interest includes: inresponse to a disparity of a pixel between the multiple views,determining whether the pixel is located at a depth of interest; and, inresponse to the pixel being located at the depth of interest,identifying the at least one region of interest to include an entiretyof a macroblock in which the pixel is located.
 2. The method of claim 1,and comprising: for macroblocks of the image, encoding respectivequantization parameters to indicate relative quantizations of themacroblocks.
 3. The method of claim 1, wherein determining whether thepixel is located at the depth of interest includes: in response to thedisparity of the pixel, and in response to whether the pixel satisfiesat least one additional criterion, determining whether the pixel islocated at the depth of interest.
 4. The method of claim 1, whereindetermining whether the pixel is located at the depth of interestincludes: determining whether the disparity of the pixel is within oneor more ranges of disparity.
 5. The method of claim 1, whereindetermining whether the pixel is located at the depth of interestincludes: determining whether the disparity of the pixel is not greaterthan a threshold.
 6. The method of claim 5, wherein the threshold iszero, and wherein determining whether the pixel is located at the depthof interest includes: in response to determining that the disparity ofthe pixel is not greater than the threshold, determining that the pixelis located at the depth of interest.
 7. The method of claim 5, whereinthe threshold is an average of respective disparities of pixels betweenthe multiple views, and wherein determining whether the pixel is locatedat the depth of interest includes: in response to determining that thedisparity of the pixel is not greater than the threshold, determiningthat the pixel is located at the depth of interest.
 8. The method ofclaim 5, wherein the threshold is a sum of: a predetermined non-zeroconstant; and an average of respective disparities of pixels between themultiple views, and wherein determining whether the pixel is located atthe depth of interest includes: in response to determining that thedisparity of the pixel is not greater than the threshold, determiningthat the pixel is located at the depth of interest.
 9. The method ofclaim 1, wherein the image is a stereoscopic image.
 10. A system forcoding at least one region of interest within an image of multipleviews, the system comprising: at least one device for: in response tothe image, identifying disparities between the multiple views; inresponse to the disparities, identifying the at least one region ofinterest encoding the at least one region of interest at lowerquantization relative to a remainder of the image; and encoding theremainder of the image at higher quantization relative to the at leastone region of interest; wherein identifying the at least one region ofinterest includes: in response to a disparity of a pixel between themultiple views, determining whether the pixel is located at a depth ofinterest; and, in response to the pixel being located at the depth ofinterest, identifying the at least one region of interest to include anentirety of a macroblock in which the pixel is located.
 11. The systemof claim 10, wherein the at least one device is for: for macroblocks ofthe image, encoding respective quantization parameters to indicaterelative quantizations of the macroblocks.
 12. The system of claim 10,wherein determining whether the pixel is located at the depth ofinterest includes: in response to the disparity of the pixel, and inresponse to whether the pixel satisfies at least one additionalcriterion, determining whether the pixel is located at the depth ofinterest.
 13. The system of claim 10, wherein determining whether thepixel is located at the depth of interest includes: determining whetherthe disparity of the pixel is within one or more ranges of disparity.14. The system of claim 10, wherein determining whether the pixel islocated at the depth of interest includes: determining whether thedisparity of the pixel is not greater than a threshold.
 15. The systemof claim 14, wherein the threshold is zero, and wherein determiningwhether the pixel is located at the depth of interest includes: inresponse to determining that the disparity of the pixel is not greaterthan the threshold, determining that the pixel is located at the depthof interest.
 16. The system of claim 14, wherein the threshold is anaverage of respective disparities of pixels between the multiple views,and wherein determining whether the pixel is located at the depth ofinterest includes: in response to determining that the disparity of thepixel is not greater than the threshold, determining that the pixel islocated at the depth of interest.
 17. The system of claim 14, whereinthe threshold is a sum of: a predetermined non-zero constant; and anaverage of respective disparities of pixels between the multiple views,and wherein determining whether the pixel is located at the depth ofinterest includes: in response to determining that the disparity of thepixel is not greater than the threshold, determining that the pixel islocated at the depth of interest.
 18. The system of claim 10, whereinthe image is a stereoscopic image.
 19. A computer program product forcoding at least one region of interest within an image of multipleviews, the computer program product comprising: a non-transitorycomputer-readable storage medium; and a computer-readable program storedon the non-transitory computer-readable storage medium, wherein thecomputer-readable program is processable by an information handlingsystem for causing the information handling system to perform operationsincluding: in response to the image, identifying disparities between themultiple views; in response to the disparities, identifying the at leastone region of interest; encoding the at least one region of interest atlower quantization relative to a remainder of the image; and encodingthe remainder of the image at higher quantization relative to the atleast one region of interest; wherein identifying the at least oneregion of interest includes: in response to a disparity of a pixelbetween the multiple views, determining whether the pixel is located ata depth of interest; and, in response to the pixel being located at thedepth of interest, identifying the at least one region of interest toinclude an entirety of a macroblock in which the pixel is located. 20.The computer program product of claim 19, wherein the operationsinclude: for macroblocks of the image, encoding respective quantizationparameters to indicate relative quantizations of the macroblocks. 21.The computer program product of claim 19, wherein determining whetherthe pixel is located at the depth of interest includes: in response tothe disparity of the pixel, and in response to whether the pixelsatisfies at least one additional criterion, determining whether thepixel is located at the depth of interest.
 22. The computer programproduct of claim 19, wherein determining whether the pixel is located atthe depth of interest includes: determining whether the disparity of thepixel is within one or more ranges of disparity.
 23. The computerprogram product of claim 19, wherein determining whether the pixel islocated at the depth of interest includes: determining whether thedisparity of the pixel is not greater than a threshold.
 24. The computerprogram product of claim 23, wherein the threshold is zero, and whereindetermining whether the pixel is located at the depth of interestincludes: in response to determining that the disparity of the pixel isnot greater than the threshold, determining that the pixel is located atthe depth of interest.
 25. The computer program product of claim 23,wherein the threshold is an average of respective disparities of pixelsbetween the multiple views, and wherein determining whether the pixel islocated at the depth of interest includes: in response to determiningthat the disparity of the pixel is not greater than the threshold,determining that the pixel is located at the depth of interest.
 26. Thecomputer program product of claim 23, wherein the threshold is a sum of:a predetermined non-zero constant; and an average of respectivedisparities of pixels between the multiple views, and whereindetermining whether the pixel is located at the depth of interestincludes: in response to determining that the disparity of the pixel isnot greater than the threshold, determining that the pixel is located atthe depth of interest.
 27. The computer program product of claim 19,wherein the image is a stereoscopic image.